﻿#define _CRT_SECURE_NO_WANINGS 1
#pragma warning(disable: 4996)
#include<stdio.h>
//最⼩公倍数是指两个或多个整数共有倍数中最⼩的⼀个。为了求出两个数的最⼩公倍数，可以采⽤枚举试除法
//void lcm(int a, int b)
//{
//	int k = a > b ? a : b;
//	for (int i = k; i <= a * b; i++)
//	{
//		if ((i % a == 0) && (i % b == 0))
//		{
//			printf("最小公倍数为%d ", i);
//			break;
//		}
//	}
//
//}
//void lcm(int a, int b)
//{
//	int k = 0;
//	int mul = a * b;
//	while (k = a % b)
//	{
//		a = b;
//		b = k;
//	}
//	printf("最小公倍数为%d ",mul / b);
//}
#include<string.h>
#include<ctype.h>
//void switchlowup(char* arr, size_t sz)
//{
//	for (int i = 0; i < sz; i++)
//	{
//		if (islower(arr[i]))
//		{
//			arr[i] = toupper(arr[i]);
//		}
//		else if (isupper(arr[i]))
//		{
//			arr[i] = tolower(arr[i]);
//		}
//	}
//	
//}输⼊2个整数m和n，写⼀个函数average，求2个整数的平均值，考虑整数过⼤溢出的问题。
//void average(int m, int n)
//{
//	int aver = (m + n) / 2;
//	printf("%d\n", aver);
//	int k = m > n ? m : n;
//	int k1 = m < n ? m : n;
//	int aver1 = k1 + (k - k1) / 2;
//	printf("%d\n", aver1);
//
//}写⼀个函数Strlen，可以求字符串⻓度，注：字符串的结束标志是 \0 .输⼊⼀个字符串（字符串⻓度⼩于等于30，中间不包含空格），使⽤Strlen函数可以求字符串的⻓
//void my_strlen(char* arr)
//{
//	int count = 0;
//	
//	while (arr[count])
//	{
//		count++;
//	}
//	printf("字符串长度为%d ", count);
//}写⼀个函数Strlen，可以求字符串⻓度，除了函数的形参，函数中不能使⽤多余的变量。
//输⼊⼀个字符串（字符串⻓度⼩于等于30，中间不包含空格），使⽤Strlen函数可以求字符串的⻓
//度，并返回。
//注：字符串的结束标志是 \0 .
//int my_strlen(const char* arr)
//{
//	if (*arr != '\0')
//	{
//		return 1 + my_strlen(arr + 1);
//	}
//	else
//	{
//		return 0;
//	}
//}输⼊⼀个字符串，写⼀个函数将⼀个字符串的内容逆序过来。
//void insert( char* arr)
//{
//	char tmp = 0;
//	int left = 0;
//	int right = strlen(arr) - 1;
//	while (left < right)
//	{
//		tmp = arr[left];
//		arr[left] = arr[right];
//		arr[right] = tmp;
//		left++;
//		right--;
//	}
//	printf("%s\n", arr);
//}输⼊⼀个整数m，求这个整数m的每⼀位之和，并打印。
//void everysum(int m)
//{
//	int sum = 0;
//	
//	while (m)
//	{
//		sum += (m % 10);
//		m = m / 10;
//	}
//	printf("%d", sum);
//}
//int main()
//{
//	int m = 0;
//	scanf("%d", &m);
//	everysum(m);
//	
//	return 0;
//}
//int main()
//{
//	double sum = 0;
//	int flag = 1;
//	double i = 0;
//	for ( i = 1; i <= 100; i++)
//	{
//		sum += (1 / i) * (flag);
//		flag = -flag;
//	}
//	printf("%f ", sum);
//	return 0;
//}
//指针-指针
//#include <stdio.h>
//int my_strlen(char* s)
//{
//	char* p = s;
//	while (*p != '\0')
//		p++;
//	return p - s;
//}
//int main()
//{
//	char arr[4] = "abc";
//	printf("%d\n", my_strlen(arr));
//	return 0;
//}
//指针的关系运算
#include <stdio.h>
int main()
{
	int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };
	int* p = &arr[0];
	int i = 0;
	int sz = sizeof(arr) / sizeof(arr[0]);
	while (p < arr + sz) //指针的⼤⼩⽐较
	{
		printf("%d ", *p);
		p++;
	}
	return 0;
}
